type A='a'
// type A='A'  报错，同一作用域类型名不能同名
if(Math.random() < 0.5){
    type A = 'A'
}

// 允许定义时嵌套
type B = `${A}-b`

// typeof 获取类型
const a:number =12;
type M= typeof a;
let r:M =1023